﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Cherry.Agile.Enterprise.Entity.Enum
{
    /// <summary>
    /// 数据状态枚举
    /// </summary>
    public enum DataDeleteStatusEnum
    {
        /// <summary>
        /// 可用的
        /// </summary>
        Valid = 0,
        /// <summary>
        /// 逻辑删除的，不可用的
        /// </summary>
        Invalid = 1,
        /// <summary>
        /// 可以进行物理删除的
        /// </summary>
        deletable = 2
    }

    public enum EntityState
    {
        UnChanged,
        New,
        Modified,
        Deleted
    }



    /// <summary>
    /// 冻结激活类型
    /// </summary>
    public enum FreezeOrActiveEnum
    {
         /// <summary>
        /// 激活
        /// </summary>
        Active = 0,

        /// <summary>
        /// 冻结
        /// </summary>
        Freeze = 1,

       
    }

    /// <summary>
    /// 功能点，菜单的分配种类。只有管理员可以使用，或者管理员和非管理员都可以使用
    /// </summary>
    public enum FunctionKindEnum : sbyte
    {
        /// <summary>
        /// 管理员和非管理员都可以使用功能点或菜单
        /// </summary>
        All = 0,
        /// <summary>
        /// 只有分配给管理员用户使用的功能点或菜单
        /// </summary>
        OnlyAdmin = 1

    }

    /// <summary>
    ///  人员类型
    /// </summary>
    public enum StaffOrUserEnum
    {
        /// <summary>
        /// 工作人员
        /// </summary>
        Staff = 0,

        /// <summary>
        /// 会员
        /// </summary>
        User = 1
    }

    /// <summary>
    /// 用户类型枚举.男，女
    /// </summary>
    public enum SexEnum
    {
        Male = 1,
        Female = 2,
        Unknow = 3
    }

    /// <summary>
    /// 是否延迟发送
    /// </summary>
    public enum SMSDelay
    {
        /// <summary>
        /// 直接发送 0
        /// </summary>
        Direct = 0,
        /// <summary>
        /// 延迟发送 1
        /// </summary>
        Delay = 1
    }

    public enum PhoneType
    {
        Mobile = (sbyte)1,
        Pad = (sbyte)2,
        PCBlueTooth = (sbyte)3
    }

    /// <summary>
    /// 数据字典分类所属类型
    /// </summary>
    public enum LanguageTypeEnum
    {
        /// <summary>
        /// 中文
        /// </summary>
        zh = 0,
        /// <summary>
        /// 系统
        /// </summary>
        en = 1
    }

    /// <summary>
    /// 短信发送状态
    /// </summary>
    public enum SMSStatus
    {
        /// <summary>
        /// 待发送 0
        /// </summary>
        Prepare = 0,
        /// <summary>
        /// 未收到回执 1
        /// </summary>
        Ready = 1,
        /// <summary>
        /// 发送成功 2
        /// </summary>
        Success = 2,
        /// <summary>
        /// 发送失败 3
        /// </summary>
        Failed = 3
    }


    /// <summary>
    /// 是否需要回执
    /// </summary>
    public enum SMSIsReturn
    {
        /// <summary>
        /// 不需要 0
        /// </summary>
        No = 0,
        /// <summary>
        /// 需要 1
        /// </summary>
        Yes = 1
    }

    /// <summary>
    /// 短信规则间隔类型
    /// </summary>
    public enum SMSIntervalType
    {
        /// <summary>
        /// 日(0)
        /// </summary>
        Day = 0,
        /// <summary>
        /// 月(1)
        /// </summary>
        Month = 1,
        /// <summary>
        /// 年(2)
        /// </summary>
        Year = 2
    }

    /// <summary>
    /// 短信模板审核类型
    /// </summary>
    public enum SMSCheckStatus
    {
        /// <summary>
        /// 未审核
        /// </summary>
        UnCheck = 0,
        /// <summary>
        /// 通过
        /// </summary>
        Pass = 1,
        /// <summary>
        /// 未通过
        /// </summary>
        Fail = 2
    }

    /// <summary>
    /// 短信模板循环类型
    /// </summary>
    public enum SMSIsCyc
    {
        /// <summary>
        /// 循环
        /// </summary>
        Yes = 1,
        /// <summary>
        /// 不循环
        /// </summary>
        No = 2,
    }

    /// <summary>
    /// 短信类型，0发送|1接收
    /// </summary>
    public enum SMSTypeEnum
    {
        /// <summary>
        /// 0表示发送
        /// </summary>
        Send = 0,
        /// <summary>
        /// 1表示接收
        /// </summary>
        Receive = 1
    }

    /// <summary>
    /// 短信接口异常类型,-1远程系统异常|-2帐号有误|-3密码有误|-4帐号未激活|-5网络连接异常
    /// </summary>
    public enum SMSErrorCode
    {
        /// <summary>
        /// 系统异常 -1
        /// </summary>
        Agile_SMSSendSystemError = -1,
        /// <summary>
        /// 帐号有误 -2
        /// </summary>
        Agile_SMSSendIncorrectAccount = -2,
        /// <summary>
        /// 密码有误 -3
        /// </summary>
        Agile_SMSSendIncorrectPassword = -3,
        /// <summary>
        /// 帐号未激活 -4
        /// </summary>
        Agile_SMSSendInactivatedAccount = -4,
        /// <summary>
        /// 网络连接异常 -5
        /// </summary>
        Agile_SMSSendNetConnError = -5,
    }

    /// <summary>
    /// 数据包状态
    /// </summary>
    public enum BagState
    {
        /// <summary>
        /// 空
        /// </summary>
        Null = 0,
        /// <summary>
        /// 等待上传中
        /// </summary>
        Waiting,
        /// <summary>
        /// 上传中
        /// </summary>
        Uploading,
        /// <summary>
        /// 上传完毕
        /// </summary>
        OK
    }

    /// <summary>
    /// 字典类型枚举： 枚举值为Sys_KeyValue表的 CategoryID. 定义新的字段是，往这里添加
    /// </summary>
    public enum CategoryEnum
    {

        /// <summary>
        /// 组织类型,1 组织,2 部门
        /// </summary>
        OrgType = 1,
        /// <summary>
        /// 性别1男，2女
        /// </summary>
        SexType = 2,
        /// <summary>
        /// 证件类型
        /// </summary>
        CredType = 3,
        /// <summary>
        /// 婚否
        /// </summary>
        MaritalStatus = 4,
        /// <summary>
        /// 文化程度
        /// </summary>
        Education = 5,
        /// <summary>
        /// 民族
        /// </summary>
        Nation = 6,

        /// <summary>
        /// 国籍
        /// </summary>
        Nationality = 7,

        /// <summary>
        /// 付费方式
        /// </summary>
        PayType = 8,

        /// <summary>
        /// 服务类别项目
        /// </summary>
        MemberServiceItem = 9,

        /// <summary>
        /// 移动终端类型
        /// </summary>
        MobileType = 10,

        /// <summary>
        /// 采集器类型
        /// </summary>
        CollectorType = 11,

        /// <summary>
        /// 职位
        /// </summary>
        Position = 12,

        /// <summary>
        /// 采集器状态
        /// </summary>
        CollectorStatus = 13,

        /// <summary>
        /// 终端状态
        /// </summary>
        PhoneStatus = 14,

        /// <summary>
        /// 会员级别
        /// </summary>
        MemberLevel = 17,

        /// <summary>
        /// 会员类别
        /// </summary>
        MemberType = 18,

        /// <summary>
        /// 家庭成员关系
        /// </summary>
        UserRelation = 21,

        /// <summary>
        /// 短信模板类型
        /// </summary>
        TemplateType = 22,
        /// <summary>
        /// 会员状态
        /// </summary>
        MemberStatus = 23,

        /// <summary>
        /// 服务时长
        /// </summary>
        MemberServicePeriod = 24,

        /// <summary>
        /// 服务套餐状态
        /// </summary>
        ServiceComboStatus = 25,

        /// <summary>
        /// 服务项目类别
        /// </summary>
        ServiceCategory = 26,

        /// <summary>
        /// 单位类型
        /// </summary>
        OrgKind = 27,

        /// <summary>
        /// 报告类型
        /// </summary>
        ReportType = 33,

        /// <summary>
        /// 手机品牌
        /// </summary>
        PhoneBrand = 34,

        /// <summary>
        /// PAD品牌
        /// </summary>
        PADBrand = 35,

        /// <summary>
        /// 项目类型
        /// </summary>
        Project = 41,

        /// <summary>
        /// 终端操作系统
        /// </summary>
        OS = 42,

        StarServiceLevel = 46,

    }


    /// <summary>
    /// 验证类型
    /// </summary>
    [Flags]
    public enum TokenType
    {
        /// <summary>
        /// 手机端验证
        /// </summary>
        PhoneValidate = 1,

        /// <summary>
        /// 客户端验证
        /// </summary>
        ClientValidate = 2,

        /// <summary>
        /// Silverlight端会员登录
        /// </summary>
        SilverlightMember = 3,

        /// <summary>
        /// Silverlight端用户登录
        /// </summary>
        SilverlightStaff = 4,
    }

    /// <summary>
    /// 升级类型
    /// </summary>
    [Flags]
    public enum UpgradeType
    {
        /// <summary>
        /// 手机
        /// </summary>
        Mobile = 0,

        /// <summary>
        /// PAD
        /// </summary>
        Pad = 1,

        /// <summary>
        /// 采集器
        /// </summary>
        Collector = 2,
        /// <summary>
        /// PC终端
        /// </summary>
        PCTerminal = 3
    }

    /// <summary>
    /// 数据字典分类所属类型
    /// </summary>
    public enum CategoryType
    {
        /// <summary>
        /// 非系统
        /// </summary>
        NonSystem = 0,
        /// <summary>
        /// 系统
        /// </summary>
        System = 1
    }

    /// <summary>
    /// 审核状态
    /// </summary>
    public enum CheckStatusEnum
    {
        /// <summary>
        /// 等待审核
        /// </summary>
        WaitingCheck = 0,
        /// <summary>
        /// 审核通过
        /// </summary>
        Checked = 1,
        /// <summary>
        /// 审核未通过
        /// </summary>
        NotPass = 2

    }
}
